package com.example.base.system.domain;

import com.alibaba.fastjson.annotation.JSONField;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.example.base.app.AppInfo;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import java.io.Serializable;
import java.util.Date;

/**
 * <p>
 * 
 * </p>
 *
 * @author X.I.O
 * @since 2024-02-23
 */

@Data
@ApiModel(description = "")
@TableName("sys_app")
public class SysApp implements Serializable {

    private static final long serialVersionUID = 1L;

    @TableId(value="id", type= IdType.AUTO)
    @ApiModelProperty(value = "")
    private Integer id;
    /**
    * 应用名称
    */
    @ApiModelProperty(value = "应用名称")
    private String appName;
    /**
    * app路径
    */
    @ApiModelProperty(value = "app路径")
    private String appPath;
    /**
    * app状态
    */
    @ApiModelProperty(value = "app状态")
    private Boolean appStatus;
    /**
    * 应用秘钥
    */
    @ApiModelProperty(value = "应用秘钥")
    private String appSecretkey;
    /**
    * 应用更新时间
    */
    @JSONField(format = "yyyy-MM-dd HH:mm:ss")
    @ApiModelProperty(value = "应用更新时间")
    private Date appUpdatetime;
    /**
    * 应用启动时间
    */
    @JSONField(format = "yyyy-MM-dd HH:mm:ss")
    @ApiModelProperty(value = "应用启动时间")
    private Date appRunStartdatetime;
    /**
    * 创建时间
    */
    @JSONField(format = "yyyy-MM-dd HH:mm:ss")
    @ApiModelProperty(value = "创建时间")
    private Date createtime;

    @ApiModelProperty(value = "app文件名")
    private String appFilename;

    @JSONField(format = "yyyy-MM-dd HH:mm:ss")
    @ApiModelProperty(value = "app授权到期时间")
    private Date appExpiredate;

    @TableField(exist = false)
    private AppInfo appInfo;
        

}
